home *** CD-ROM | disk | FTP | other *** search
/ Merciful 1 / Merciful - Disc 1.iso / software / d / devpak / devpakv3.01kickstartv1.3b.dms / devpakv3.01kickstartv1.3b.adf / include / resources / disk.i < prev    next >
Text File  |  1991-11-20  |  3KB  |  119 lines

  1.     IFND    RESOURCES_DISK_I
  2. RESOURCES_DISK_I    SET    1
  3. **
  4. **    $Filename: resources/disk.i $
  5. **    $Release: 1.3 $
  6. **
  7. **    external declarations for disc resources 
  8. **
  9. **    (C) Copyright 1985,1986,1987,1988 Commodore-Amiga, Inc.
  10. **        All Rights Reserved
  11. **
  12.  
  13.     IFND    EXEC_TYPES_I
  14.     INCLUDE "exec/types.i"
  15.     ENDC    ; EXEC_TYPES_I
  16.  
  17.     IFND    EXEC_LISTS_I
  18.     INCLUDE "exec/lists.i"
  19.     ENDC    ; EXEC_LISTS_I
  20.  
  21.     IFND    EXEC_PORTS_I
  22.     INCLUDE "exec/ports.i"
  23.     ENDC    ; EXEC_PORTS_I
  24.  
  25.     IFND    EXEC_INTERRUPTS_I
  26.     INCLUDE "exec/interrupts.i"
  27.     ENDC    ; EXEC_INTERRUPTS_I
  28.  
  29.     IFND    EXEC_LIBRARIES_I
  30.     INCLUDE "exec/libraries.i"
  31.     ENDC    ; EXEC_LIBRARIES_I
  32.  
  33.  
  34. *********************************************************************
  35. *
  36. * Resource structures
  37. *
  38. *********************************************************************
  39.  
  40.     STRUCTURE DISCRESOURCEUNIT,MN_SIZE
  41.     STRUCT    DRU_DISCBLOCK,IS_SIZE
  42.     STRUCT    DRU_DISCSYNC,IS_SIZE
  43.     STRUCT    DRU_INDEX,IS_SIZE
  44.     LABEL    DRU_SIZE
  45.  
  46.  
  47.  
  48.     STRUCTURE DISCRESOURCE,LIB_SIZE
  49.     APTR    DR_CURRENT    ; pointer to current unit structure
  50.     UBYTE    DR_FLAGS
  51.     UBYTE    DR_pad
  52.     APTR    DR_SYSLIB
  53.     APTR    DR_CIARESOURCE
  54.     STRUCT    DR_UNITID,4*4
  55.     STRUCT    DR_WAITING,LH_SIZE
  56.     STRUCT    DR_DISCBLOCK,IS_SIZE
  57.     STRUCT    DR_DISCSYNC,IS_SIZE
  58.     STRUCT    DR_INDEX,IS_SIZE
  59.     LABEL    DR_SIZE
  60.  
  61.     BITDEF    DR,ALLOC0,0    ; unit zero is allocated
  62.     BITDEF    DR,ALLOC1,1    ; unit one is allocated
  63.     BITDEF    DR,ALLOC2,2    ; unit two is allocated
  64.     BITDEF    DR,ALLOC3,3    ; unit three is allocated
  65.     BITDEF    DR,ACTIVE,7    ; is the disc currently busy?
  66.  
  67.  
  68. *********************************************************************
  69. *
  70. * Hardware Magic
  71. *
  72. *********************************************************************
  73.  
  74.  
  75. DSKDMAOFF    EQU    $4000    ; idle command for dsklen register
  76.  
  77.  
  78. *********************************************************************
  79. *
  80. * Resource specific commands
  81. *
  82. *********************************************************************
  83.  
  84. *-- DR_NAME is a generic macro to get the name of the resource.     This
  85. *-- way if the name is ever changed you will pick up the change
  86. *-- automatically.
  87. *--
  88. *-- Normal usage would be:
  89. *--
  90. *-- internalName:    DISKNAME
  91. *--
  92.  
  93. DISKNAME:    MACRO
  94.         DC.B    'disk.resource',0
  95.         DS.W    0
  96.         ENDM
  97.  
  98.     LIBINIT LIB_BASE
  99.     LIBDEF    DR_ALLOCUNIT
  100.     LIBDEF    DR_FREEUNIT
  101.     LIBDEF    DR_GETUNIT
  102.     LIBDEF    DR_GIVEUNIT
  103.     LIBDEF    DR_GETUNITID
  104.  
  105. DR_LASTCOMM    EQU    DR_GIVEUNIT
  106.  
  107.  
  108. *********************************************************************
  109. *
  110. * drive types
  111. *
  112. *********************************************************************
  113.  
  114. DRT_AMIGA    EQU    $00000000
  115. DRT_37422D2S    EQU    $55555555
  116. DRT_EMPTY    EQU    $FFFFFFFF
  117.  
  118.     ENDC    ; RESOURCES_DISK_I
  119.